<template>
	<u-popup :show="show" mode="center" :round="10" :closeOnClickOverlay="false" @close="handleClose">
		<view class="privacy-popup">
			<view class="popup-header">
				<text class="title">隐私协议</text>
			</view>

			<scroll-view class="popup-content" scroll-y>
				<view class="agreement-text">
					<text class="section-title">一、信息收集</text>
					<text class="section-content">
						我们可能会收集您在使用服务时提供的个人信息，包括但不限于姓名、联系方式、位置信息等，以提供更好的服务体验。
					</text>

					<text class="section-title">二、信息使用</text>
					<text class="section-content">
						我们承诺仅将收集的信息用于改善服务质量、提供个性化推荐及必要的客户支持，不会将您的信息用于其他商业目的。
					</text>

					<text class="section-title">三、信息保护</text>
					<text class="section-content">
						我们采取合理的安全措施保护您的个人信息，防止未经授权的访问、披露、使用或修改。但请注意，任何互联网传输方式都无法保证100%安全。
					</text>

					<text class="section-title">四、信息共享</text>
					<text class="section-content">
						我们不会向第三方出售、交易或出租您的个人信息，除非获得您的明确同意或法律法规要求。
					</text>

					<text class="section-title">五、您的权利</text>
					<text class="section-content">
						您有权查询、更正、删除您的个人信息，或撤回已同意的授权。如需操作，请联系客服。
					</text>

					<text class="section-title">六、协议更新</text>
					<text class="section-content">
						我们可能会不时更新本隐私协议，更新后的协议将在App内公布，请您定期查阅。
					</text>
				</view>
			</scroll-view>

			<view class="popup-footer">
				<view class="disagree-btn" @click="handleAgree">
					<text class="btn-text">关闭</text>
				</view>
				<!-- <view class="agree-btn" @click="handleAgree">
					<text class="btn-text">同意并继续</text>
				</view>
				<view class="disagree-btn" @click="handleDisagree">
					<text class="btn-text">不同意</text>
				</view> -->
			</view>
		</view>
	</u-popup>
</template>

<script>
	export default {
		name: 'PrivacyPolicy',
		props: {
			show: {
				type: Boolean,
				default: false
			}
		},
		methods: {
			handleClose() {
				// 阻止点击遮罩关闭
				return;
			},

			handleAgree() {
				this.$emit('agree');
				this.$emit('update:show', false);
				// 可以在这里存储用户同意的状态
				uni.setStorageSync('privacyAgreed', true);
			},

			handleDisagree() {
				this.$emit('disagree');
				// 不同意时可以选择退出App
				// #ifdef APP-PLUS
				plus.runtime.quit();
				// #endif
			}
		}
	}
</script>

<style lang="scss" scoped>
	.privacy-popup {
		width: 600rpx;
		background: #fff;
		border-radius: 20rpx;
		overflow: hidden;

		.popup-header {
			padding: 30rpx;
			border-bottom: 1rpx solid #f0f0f0;
			text-align: center;

			.title {
				font-size: 36rpx;
				font-weight: bold;
				color: #333;
			}
		}

		.popup-content {
			max-height: 600rpx;
			padding: 30rpx;

			.agreement-text {
				display: flex;
				flex-direction: column;

				.section-title {
					font-size: 30rpx;
					font-weight: bold;
					color: #333;
					margin-top: 20rpx;
					margin-bottom: 10rpx;

					&:first-child {
						margin-top: 0;
					}
				}

				.section-content {
					font-size: 28rpx;
					color: #666;
					line-height: 1.6;
					margin-bottom: 20rpx;
				}
			}
		}

		.popup-footer {
			padding: 30rpx;
			display: flex;
			gap: 20rpx;
			border-top: 1rpx solid #f0f0f0;

			.agree-btn,
			.disagree-btn {
				flex: 1;
				height: 80rpx;
				border-radius: 40rpx;
				display: flex;
				align-items: center;
				justify-content: center;
			}

			.agree-btn {
				background: #007AFF;

				.btn-text {
					color: #fff;
					font-size: 30rpx;
				}
			}

			.disagree-btn {
				background: #f8f8f8;
				border: 1rpx solid #e0e0e0;

				.btn-text {
					color: #666;
					font-size: 30rpx;
				}
			}
		}
	}
</style>